package com.yxtp.util;

import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.springframework.web.multipart.MultipartFile;

public class FileUploadUtils {

	// 创建根目录
	public String savePath = "D:/YXTPIMG/";

	/*
	 * 文件名 System.currentTimeMillis()自动获取系统时间戳转换为秒
	 */
	public String getFileName(String originalFilename) {
		String fileName = String.valueOf(System.currentTimeMillis()) + originalFilename;
		return fileName;
	}

	public String getImgPath(MultipartFile file) {
		if ("".equals(file.getOriginalFilename())) {
			return null;
		}
		// 获取上传图片的文件名,变为时间+图片名
		String fileName = getFileName(file.getOriginalFilename());
		System.out.println("filename:" + fileName);
		//创建日期目录以日为单位
		SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
		String ymd = sdf.format(new Date());
		savePath += "/" + ymd + "/"; 
		//如果文件夹不存在则创建文件夹  
        File dirFile = new File(savePath);  
        if (!dirFile.exists()) {  
            dirFile.mkdirs();  
        }  
		String filePath = savePath + fileName;
		// 创建文件对象
		File tagetFile = new File(savePath + fileName);
		// 文件名不存在 则新建文件，并将文件复制到新建文件中
		if (!tagetFile.exists()) {
			try {
				tagetFile.createNewFile();
			} catch (IOException e) {
				e.printStackTrace();
			}
			try {
				// 保存图片
				file.transferTo(tagetFile);
				return fileName;
			} catch (IllegalStateException e) {
				e.printStackTrace();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		return null;
	}
}
